static void
blur_overlay_init (BlurOverlay *overlay)
{
- gtk_widget_set_has_surface (GTK_WIDGET (overlay), FALSE);
}
GtkWidget *
{
DemoTaggedEntryPrivate *priv = demo_tagged_entry_get_instance_private (entry);
- gtk_widget_set_has_surface (GTK_WIDGET (entry), FALSE);
-
priv->box = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0);
gtk_widget_set_parent (priv->box, GTK_WIDGET (entry));
GtkGesture *gesture;
GtkCssProvider *provider;
- gtk_widget_set_has_surface (GTK_WIDGET (tag), FALSE);
-
tag->box = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0);
gtk_widget_set_parent (tag->box, GTK_WIDGET (tag));
tag->label = gtk_label_new ("");
{
GtkGesture *gesture;
- gtk_widget_set_has_surface (GTK_WIDGET (plane), FALSE);
gtk_widget_set_can_focus (GTK_WIDGET (plane), TRUE);
gesture = gtk_gesture_drag_new ();
{
GtkFishbowlPrivate *priv = gtk_fishbowl_get_instance_private (fishbowl);
- gtk_widget_set_has_surface (GTK_WIDGET (fishbowl), FALSE);
-
priv->update_delay = G_USEC_PER_SEC;
}
{
GtkGesture *gesture;
- gtk_widget_set_has_surface (GTK_WIDGET (area), FALSE);
-
gesture = gtk_gesture_stylus_new ();
g_signal_connect (gesture, "down",
G_CALLBACK (stylus_gesture_down), area);
gtk_widget_set_focus_child
gtk_widget_get_can_target
gtk_widget_set_can_target
-gtk_widget_get_has_surface
-gtk_widget_set_has_surface
gtk_widget_get_sensitive
gtk_widget_is_sensitive
gtk_widget_get_visible
{
GtkAccelLabelPrivate *priv = gtk_accel_label_get_instance_private (accel_label);
- gtk_widget_set_has_surface (GTK_WIDGET (accel_label), FALSE);
-
priv->accel_widget = NULL;
priv->accel_closure = NULL;
priv->accel_group = NULL;
GtkWidget *widget = GTK_WIDGET (action_bar);
GtkActionBarPrivate *priv = gtk_action_bar_get_instance_private (action_bar);
- gtk_widget_set_has_surface (widget, FALSE);
-
priv->revealer = gtk_revealer_new ();
gtk_widget_set_parent (priv->revealer, widget);
gtk_app_chooser_button_init (GtkAppChooserButton *self)
{
GtkAppChooserButtonPrivate *priv = gtk_app_chooser_button_get_instance_private (self);
- gtk_widget_set_has_surface (GTK_WIDGET (self), FALSE);
priv->custom_item_names = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, NULL);
priv->store = gtk_list_store_new (NUM_COLUMNS,
GtkTreeModel *sort;
GtkGesture *gesture;
- gtk_widget_set_has_surface (GTK_WIDGET (self), FALSE);
-
gtk_widget_init_template (GTK_WIDGET (self));
/* Various parts of the GtkTreeView code need custom code to setup, mostly
static void
gtk_bin_init (GtkBin *bin)
{
- gtk_widget_set_has_surface (GTK_WIDGET (bin), FALSE);
}
static GType
{
GtkBoxPrivate *priv = gtk_box_get_instance_private (box);
- gtk_widget_set_has_surface (GTK_WIDGET (box), FALSE);
-
priv->orientation = GTK_ORIENTATION_HORIZONTAL;
_gtk_orientable_set_style_classes (GTK_ORIENTABLE (box));
}
gtk_widget_set_can_focus (GTK_WIDGET (button), TRUE);
gtk_widget_set_receives_default (GTK_WIDGET (button), TRUE);
- gtk_widget_set_has_surface (GTK_WIDGET (button), FALSE);
priv->in_button = FALSE;
priv->button_down = FALSE;
#endif
gtk_widget_set_can_focus (widget, TRUE);
- gtk_widget_set_has_surface (widget, FALSE);
gtk_style_context_add_class (gtk_widget_get_style_context (GTK_WIDGET (calendar)),
GTK_STYLE_CLASS_VIEW);
g_signal_connect (controller, "modifiers",
G_CALLBACK (key_controller_modifiers), box);
gtk_widget_add_controller (widget, controller);
-
- gtk_widget_set_has_surface (widget, FALSE);
}
static GtkWidget *
GtkCellViewPrivate *priv = gtk_cell_view_get_instance_private (cellview);
priv->orientation = GTK_ORIENTATION_HORIZONTAL;
-
- gtk_widget_set_has_surface (GTK_WIDGET (cellview), FALSE);
}
static void
static void
gtk_center_box_init (GtkCenterBox *self)
{
- gtk_widget_set_has_surface (GTK_WIDGET (self), FALSE);
-
self->start_widget = NULL;
self->center_widget = NULL;
self->end_widget = NULL;
GtkStyleContext *context;
GdkContentFormats *targets;
- gtk_widget_set_has_surface (GTK_WIDGET (button), FALSE);
-
priv->button = gtk_button_new ();
g_signal_connect (priv->button, "clicked", G_CALLBACK (gtk_color_button_clicked), button);
gtk_widget_set_parent (priv->button, GTK_WIDGET (button));
plane->priv = gtk_color_plane_get_instance_private (plane);
- gtk_widget_set_has_surface (GTK_WIDGET (plane), FALSE);
gtk_widget_set_can_focus (GTK_WIDGET (plane), TRUE);
atk_obj = gtk_widget_get_accessible (GTK_WIDGET (plane));
priv->has_menu = TRUE;
gtk_widget_set_can_focus (GTK_WIDGET (swatch), TRUE);
- gtk_widget_set_has_surface (GTK_WIDGET (swatch), FALSE);
gtk_widget_set_overflow (GTK_WIDGET (swatch), GTK_OVERFLOW_HIDDEN);
gesture = gtk_gesture_long_press_new ();
static void
gtk_drawing_area_init (GtkDrawingArea *darea)
{
- gtk_widget_set_has_surface (GTK_WIDGET (darea), FALSE);
}
/**
{
GtkEntryPrivate *priv = gtk_entry_get_instance_private (entry);
- gtk_widget_set_has_surface (GTK_WIDGET (entry), FALSE);
-
priv->text = gtk_text_new ();
gtk_widget_set_parent (priv->text, GTK_WIDGET (entry));
gtk_editable_init_delegate (GTK_EDITABLE (entry));
GtkGesture *gesture;
gtk_widget_set_can_focus (GTK_WIDGET (expander), TRUE);
- gtk_widget_set_has_surface (GTK_WIDGET (expander), FALSE);
priv->label_widget = NULL;
priv->child = NULL;
GtkWidget *icon;
GdkContentFormats *target_list;
- gtk_widget_set_has_surface (GTK_WIDGET (button), FALSE);
-
priv->button = gtk_button_new ();
g_signal_connect (priv->button, "clicked", G_CALLBACK (button_clicked_cb), button);
priv->image = gtk_image_new ();
#ifdef PROFILE_FILE_CHOOSER
access ("MARK: *** CREATE FILE CHOOSER", F_OK);
#endif
- gtk_widget_set_has_surface (GTK_WIDGET (impl), FALSE);
priv->local_only = FALSE;
priv->preview_widget_active = TRUE;
{
GtkFixedPrivate *priv = gtk_fixed_get_instance_private (self);
- gtk_widget_set_has_surface (GTK_WIDGET (self), FALSE);
gtk_widget_set_overflow (GTK_WIDGET (self), GTK_OVERFLOW_HIDDEN);
priv->layout = gtk_widget_get_layout_manager (GTK_WIDGET (self));
GtkEventController *controller;
GtkGesture *gesture;
- gtk_widget_set_has_surface (GTK_WIDGET (box), FALSE);
-
priv->orientation = GTK_ORIENTATION_HORIZONTAL;
priv->selection_mode = GTK_SELECTION_SINGLE;
priv->max_children_per_line = DEFAULT_MAX_CHILDREN_PER_LINE;
GtkFontButtonPrivate *priv = gtk_font_button_get_instance_private (font_button);
GtkWidget *box;
- gtk_widget_set_has_surface (GTK_WIDGET (font_button), FALSE);
-
priv->button = gtk_button_new ();
g_signal_connect (priv->button, "clicked", G_CALLBACK (gtk_font_button_clicked), font_button);
priv->font_label = gtk_label_new (_("Font"));
{
GtkFontChooserWidgetPrivate *priv = gtk_font_chooser_widget_get_instance_private (fontchooser);
- gtk_widget_set_has_surface (GTK_WIDGET (fontchooser), FALSE);
-
gtk_widget_init_template (GTK_WIDGET (fontchooser));
priv->axes = g_hash_table_new_full (axis_hash, axis_equal, NULL, axis_free);
static void
gtk_gizmo_init (GtkGizmo *self)
{
- gtk_widget_set_has_surface (GTK_WIDGET (self), FALSE);
}
GtkWidget *
{
GtkGLAreaPrivate *priv = gtk_gl_area_get_instance_private (area);
- gtk_widget_set_has_surface (GTK_WIDGET (area), FALSE);
-
priv->auto_render = TRUE;
priv->needs_render = TRUE;
priv->required_gl_version = 0;
{
GtkGridPrivate *priv = gtk_grid_get_instance_private (grid);
- gtk_widget_set_has_surface (GTK_WIDGET (grid), FALSE);
-
priv->layout_manager = gtk_widget_get_layout_manager (GTK_WIDGET (grid));
priv->orientation = GTK_ORIENTATION_HORIZONTAL;
priv = gtk_header_bar_get_instance_private (bar);
- gtk_widget_set_has_surface (GTK_WIDGET (bar), FALSE);
-
priv->title = NULL;
priv->subtitle = NULL;
priv->custom_title = NULL;
static void
gtk_icon_init (GtkIcon *self)
{
- gtk_widget_set_has_surface (GTK_WIDGET (self), FALSE);
self->image = GTK_CSS_IMAGE_BUILTIN_NONE;
}
icon_view->priv->mouse_x = -1;
icon_view->priv->mouse_y = -1;
- gtk_widget_set_has_surface (GTK_WIDGET (icon_view), FALSE);
gtk_widget_set_can_focus (GTK_WIDGET (icon_view), TRUE);
gtk_widget_set_overflow (GTK_WIDGET (icon_view), GTK_OVERFLOW_HIDDEN);
GtkCssNode *widget_node;
widget_node = gtk_widget_get_css_node (GTK_WIDGET (image));
- gtk_widget_set_has_surface (GTK_WIDGET (image), FALSE);
priv->icon_helper = gtk_icon_helper_new (widget_node, GTK_WIDGET (image));
}
{
GtkLabelPrivate *priv = gtk_label_get_instance_private (label);
- gtk_widget_set_has_surface (GTK_WIDGET (label), FALSE);
-
priv->width_chars = -1;
priv->max_width_chars = -1;
priv->label = g_strdup ("");
priv->inverted = FALSE;
- gtk_widget_set_has_surface (GTK_WIDGET (self), FALSE);
-
priv->trough_widget = gtk_gizmo_new ("trough",
gtk_level_bar_measure_trough,
gtk_level_bar_allocate_trough,
GtkWidget *widget = GTK_WIDGET (box);
GtkGesture *gesture;
- gtk_widget_set_has_surface (widget, FALSE);
priv->selection_mode = GTK_SELECTION_SINGLE;
priv->activate_single_click = TRUE;
GtkMagnifierPrivate *priv = gtk_magnifier_get_instance_private (self);
GtkWidget *widget = GTK_WIDGET (self);
- gtk_widget_set_has_surface (widget, FALSE);
gtk_widget_set_overflow (widget, GTK_OVERFLOW_HIDDEN);
priv->magnification = 1;
gtk_media_controls_init (GtkMediaControls *controls)
{
gtk_widget_init_template (GTK_WIDGET (controls));
- gtk_widget_set_has_surface (GTK_WIDGET (controls), FALSE);
}
/**
GtkMenuButtonPrivate *priv = gtk_menu_button_get_instance_private (menu_button);
GtkStyleContext *context;
- gtk_widget_set_has_surface (GTK_WIDGET (menu_button), FALSE);
-
priv->arrow_type = GTK_ARROW_DOWN;
priv->use_popover = TRUE;
priv = gtk_menu_item_get_instance_private (menu_item);
menu_item->priv = priv;
- gtk_widget_set_has_surface (GTK_WIDGET (menu_item), FALSE);
-
g_signal_connect (menu_item, "notify::parent", G_CALLBACK (gtk_menu_item_parent_cb), NULL);
priv->submenu = NULL;
G_CALLBACK (gtk_menu_shell_key_press), widget);
gtk_widget_add_controller (widget, controller);
- gtk_widget_set_has_surface (widget, FALSE);
-
controller = GTK_EVENT_CONTROLLER (gtk_gesture_multi_press_new ());
gtk_event_controller_set_propagation_limit (controller, GTK_LIMIT_NONE);
gtk_gesture_single_set_button (GTK_GESTURE_SINGLE (controller), 0);
GtkGesture *gesture;
gtk_widget_set_can_focus (GTK_WIDGET (notebook), TRUE);
- gtk_widget_set_has_surface (GTK_WIDGET (notebook), FALSE);
notebook->priv = gtk_notebook_get_instance_private (notebook);
priv = notebook->priv;
{
GtkOverlayPrivate *priv = gtk_overlay_get_instance_private (overlay);
- gtk_widget_set_has_surface (GTK_WIDGET (overlay), FALSE);
-
priv->layout = gtk_widget_get_layout_manager (GTK_WIDGET (overlay));
}
GtkPanedPrivate *priv = gtk_paned_get_instance_private (paned);
GtkGesture *gesture;
- gtk_widget_set_has_surface (GTK_WIDGET (paned), FALSE);
gtk_widget_set_can_focus (GTK_WIDGET (paned), TRUE);
gtk_widget_set_overflow (GTK_WIDGET (paned), GTK_OVERFLOW_HIDDEN);
{
GtkPasswordEntryPrivate *priv = gtk_password_entry_get_instance_private (entry);
- gtk_widget_set_has_surface (GTK_WIDGET (entry), FALSE);
-
priv->entry = gtk_text_new ();
gtk_text_set_visibility (GTK_TEXT (priv->entry), FALSE);
gtk_widget_set_parent (priv->entry, GTK_WIDGET (entry));
g_signal_connect_swapped (priv->down_slider_button, "clicked",
G_CALLBACK (gtk_path_bar_scroll_down), path_bar);
- gtk_widget_set_has_surface (GTK_WIDGET (path_bar), FALSE);
-
context = gtk_widget_get_style_context (GTK_WIDGET (path_bar));
gtk_style_context_add_class (context, "path-bar");
gtk_style_context_add_class (context, GTK_STYLE_CLASS_LINKED);
static void
gtk_picture_init (GtkPicture *self)
{
- gtk_widget_set_has_surface (GTK_WIDGET (self), FALSE);
-
self->can_shrink = TRUE;
self->keep_aspect_ratio = TRUE;
}
GtkEventController *controller;
GtkStyleContext *context;
- gtk_widget_set_has_surface (GTK_WIDGET (popover), TRUE);
-
priv->position = GTK_POS_TOP;
priv->final_position = GTK_POS_TOP;
priv->modal = TRUE;
priv->paper_size_renderer,
page_name_func, NULL, NULL);
- /* Preview drawing area has no window */
- gtk_widget_set_has_surface (priv->page_layout_preview, FALSE);
-
/* Load backends */
load_print_backends (dialog);
priv->text = NULL;
priv->fraction = 0.0;
- gtk_widget_set_has_surface (GTK_WIDGET (pbar), FALSE);
-
_gtk_orientable_set_style_classes (GTK_ORIENTABLE (pbar));
priv->trough_widget = gtk_gizmo_new ("trough",
GtkGesture *gesture;
GtkEventController *controller;
- gtk_widget_set_has_surface (GTK_WIDGET (range), FALSE);
-
priv->orientation = GTK_ORIENTATION_HORIZONTAL;
priv->adjustment = NULL;
priv->inverted = FALSE;
priv->current_pos = 0.0;
priv->target_pos = 0.0;
- gtk_widget_set_has_surface (GTK_WIDGET (revealer), FALSE);
gtk_widget_set_overflow (GTK_WIDGET (revealer), GTK_OVERFLOW_HIDDEN);
}
{
GtkScrollbarPrivate *priv = gtk_scrollbar_get_instance_private (self);
- gtk_widget_set_has_surface (GTK_WIDGET (self), FALSE);
-
priv->orientation = GTK_ORIENTATION_HORIZONTAL;
priv->box = gtk_box_new (priv->orientation, 0);
};
gint i;
- gtk_widget_set_has_surface (widget, FALSE);
gtk_widget_set_can_focus (widget, TRUE);
/* Instantiated by gtk_scrolled_window_set_[hv]adjustment
GtkSearchEntryPrivate *priv = gtk_search_entry_get_instance_private (entry);
GtkGesture *press;
- gtk_widget_set_has_surface (GTK_WIDGET (entry), FALSE);
-
priv->entry = gtk_text_new ();
gtk_widget_set_parent (priv->entry, GTK_WIDGET (entry));
gtk_editable_init_delegate (GTK_EDITABLE (entry));
priv->orientation = GTK_ORIENTATION_HORIZONTAL;
- gtk_widget_set_has_surface (GTK_WIDGET (separator), FALSE);
-
_gtk_orientable_set_style_classes (GTK_ORIENTABLE (separator));
}
static void
gtk_separator_tool_item_init (GtkSeparatorToolItem *separator_item)
{
- GtkWidget *widget;
-
- widget = GTK_WIDGET (separator_item);
-
- gtk_widget_set_has_surface (widget, FALSE);
}
static void
static void
gtk_shortcuts_shortcut_init (GtkShortcutsShortcut *self)
{
- gtk_widget_set_has_surface (GTK_WIDGET (self), FALSE);
-
self->box = g_object_new (GTK_TYPE_BOX,
"orientation", GTK_ORIENTATION_HORIZONTAL,
"spacing", 12,
GtkEventController *controller;
GtkGesture *gesture;
- gtk_widget_set_has_surface (GTK_WIDGET (spin_button), FALSE);
-
priv->adjustment = NULL;
priv->timer = 0;
priv->climb_rate = 0.0;
static void
gtk_spinner_init (GtkSpinner *spinner)
{
- gtk_widget_set_has_surface (GTK_WIDGET (spinner), FALSE);
}
/**
{
GtkStackPrivate *priv = gtk_stack_get_instance_private (stack);
- gtk_widget_set_has_surface (GTK_WIDGET (stack), FALSE);
-
priv->vhomogeneous = TRUE;
priv->hhomogeneous = TRUE;
priv->transition_duration = 200;
GtkStyleContext *context;
GtkStackSwitcherPrivate *priv;
- gtk_widget_set_has_surface (GTK_WIDGET (switcher), FALSE);
-
priv = gtk_stack_switcher_get_instance_private (switcher);
priv->buttons = g_hash_table_new_full (g_direct_hash, g_direct_equal, g_object_unref, NULL);
{
GtkStatusbarPrivate *priv = gtk_statusbar_get_instance_private (statusbar);
- gtk_widget_set_has_surface (GTK_WIDGET (statusbar), FALSE);
-
priv->seq_context_id = 1;
priv->seq_message_id = 1;
priv->messages = NULL;
GtkLayoutManager *layout;
GtkGesture *gesture;
- gtk_widget_set_has_surface (GTK_WIDGET (self), FALSE);
gtk_widget_set_can_focus (GTK_WIDGET (self), TRUE);
gesture = gtk_gesture_multi_press_new ();
int i;
gtk_widget_set_can_focus (GTK_WIDGET (self), TRUE);
- gtk_widget_set_has_surface (GTK_WIDGET (self), FALSE);
gtk_widget_set_overflow (GTK_WIDGET (self), GTK_OVERFLOW_HIDDEN);
priv->editable = TRUE;
text_view->priv = gtk_text_view_get_instance_private (text_view);
priv = text_view->priv;
- gtk_widget_set_has_surface (widget, FALSE);
gtk_widget_set_can_focus (widget, TRUE);
gtk_widget_set_overflow (widget, GTK_OVERFLOW_HIDDEN);
priv = toolbar->priv;
gtk_widget_set_can_focus (widget, FALSE);
- gtk_widget_set_has_surface (widget, FALSE);
priv->orientation = GTK_ORIENTATION_HORIZONTAL;
priv->style = DEFAULT_TOOLBAR_STYLE;
priv->event_last_x = -10000;
priv->event_last_y = -10000;
- gtk_widget_set_has_surface (GTK_WIDGET (tree_view), FALSE);
-
gtk_tree_view_do_set_vadjustment (tree_view, NULL);
gtk_tree_view_do_set_hadjustment (tree_view, NULL);
gtk_video_init (GtkVideo *self)
{
gtk_widget_init_template (GTK_WIDGET (self));
- gtk_widget_set_has_surface (GTK_WIDGET (self), FALSE);
}
/**
widget = GTK_WIDGET (viewport);
- gtk_widget_set_has_surface (widget, FALSE);
gtk_widget_set_overflow (widget, GTK_OVERFLOW_HIDDEN);
priv->shadow_type = GTK_SHADOW_IN;
update_cursor_on_state_change (widget);
- if (!_gtk_widget_get_has_surface (widget))
+ if (!GTK_IS_NATIVE (widget))
gtk_widget_queue_draw (widget);
gtk_widget_pop_verify_invariants (widget);
/* Don't consider the parent == widget case here. */
parent = _gtk_widget_get_parent (widget);
- while (parent && !_gtk_widget_get_has_surface (parent))
+ while (parent && !GTK_IS_NATIVE (parent))
parent = _gtk_widget_get_parent (parent);
g_assert (GTK_IS_WINDOW (parent) || GTK_IS_POPOVER (parent));
priv->draw_needed = TRUE;
g_clear_pointer (&priv->render_node, gsk_render_node_unref);
- if (_gtk_widget_get_has_surface (widget) &&
+ if (GTK_IS_NATIVE (widget) &&
_gtk_widget_get_realized (widget))
gdk_surface_queue_expose (gtk_widget_get_surface (widget));
}
adjusted.height = 0;
}
- if (G_UNLIKELY (_gtk_widget_get_has_surface (widget)))
+ if (G_UNLIKELY (GTK_IS_NATIVE (widget)))
{
adjusted.width = MAX (1, adjusted.width);
adjusted.height = MAX (1, adjusted.height);
return TRUE;
}
-/**
- * gtk_widget_set_has_surface:
- * @widget: a #GtkWidget
- * @has_surface: whether or not @widget has a surface.
- *
- * Specifies whether @widget has a #GdkSurface of its own. Note that
- * all realized widgets have a non-%NULL “window” pointer
- * (gtk_widget_get_surface() never returns a %NULL surface when a widget
- * is realized), but for many of them it’s actually the #GdkSurface of
- * one of its parent widgets. Widgets that do not create a %window for
- * themselves in #GtkWidget::realize must announce this by
- * calling this function with @has_surface = %FALSE.
- *
- * This function should only be called by widget implementations,
- * and they should call it in their init() function.
- **/
-void
-gtk_widget_set_has_surface (GtkWidget *widget,
- gboolean has_surface)
-{
- GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
-
- g_return_if_fail (GTK_IS_WIDGET (widget));
-
- priv->no_surface = !has_surface;
- priv->no_surface_set = TRUE;
-
- /* GdkSurface has a min size of 1×1 */
- priv->width = 1;
- priv->height = 1;
-}
-
-/**
- * gtk_widget_get_has_surface:
- * @widget: a #GtkWidget
- *
- * Determines whether @widget has a #GdkSurface of its own. See
- * gtk_widget_set_has_surface().
- *
- * Returns: %TRUE if @widget has a surface, %FALSE otherwise
- **/
-gboolean
-gtk_widget_get_has_surface (GtkWidget *widget)
-{
- GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
-
- g_return_val_if_fail (GTK_IS_WIDGET (widget), FALSE);
-
- return !priv->no_surface;
-}
-
/**
* gtk_widget_is_toplevel:
* @widget: a #GtkWidget
g_object_set_qdata (object, quark_widget_path, NULL);
G_OBJECT_CLASS (gtk_widget_parent_class)->constructed (object);
-
- if (!priv->no_surface_set)
- {
- g_warning ("%s does not call gtk_widget_set_has_surface() in its init function", G_OBJECT_TYPE_NAME (widget));
- }
}
static void
GtkWidget *p;
priv->mapped = TRUE;
- if (_gtk_widget_get_has_surface (widget))
+ if (GTK_IS_NATIVE (widget))
gdk_surface_show (priv->surface);
for (p = gtk_widget_get_first_child (widget);
GtkWidget *child;
priv->mapped = FALSE;
- if (_gtk_widget_get_has_surface (widget))
+ if (GTK_IS_NATIVE (widget))
gdk_surface_hide (priv->surface);
for (child = gtk_widget_get_first_child (widget);
{
GtkWidgetPrivate *priv = gtk_widget_get_instance_private (widget);
- if (_gtk_widget_get_has_surface (widget))
+ if (GTK_IS_NATIVE (widget))
{
g_assert (priv->surface != NULL);
}
priv->realized = FALSE;
- if (_gtk_widget_get_has_surface (widget))
+ if (GTK_IS_NATIVE (widget))
{
gdk_surface_destroy (priv->surface);
priv->surface = NULL;
{
g_return_if_fail (GTK_IS_WIDGET (widget));
/* set_shape doesn't work on widgets without GDK surface */
- g_return_if_fail (_gtk_widget_get_has_surface (widget));
+ g_return_if_fail (GTK_IS_NATIVE (widget));
if (region == NULL)
g_object_set_qdata (G_OBJECT (widget), quark_input_shape_info, NULL);
GDK_AVAILABLE_IN_ALL
gboolean gtk_widget_is_visible (GtkWidget *widget);
-GDK_AVAILABLE_IN_ALL
-void gtk_widget_set_has_surface (GtkWidget *widget,
- gboolean has_surface);
-GDK_AVAILABLE_IN_ALL
-gboolean gtk_widget_get_has_surface (GtkWidget *widget);
-
GDK_AVAILABLE_IN_ALL
gboolean gtk_widget_is_toplevel (GtkWidget *widget);
GDK_AVAILABLE_IN_ALL
*/
#include "gtkwidgetprivate.h"
+#include "gtknative.h"
typedef struct _CompareInfo CompareInfo;
}
else
{
- if (!_gtk_widget_get_has_surface (widget))
+ if (!GTK_IS_NATIVE (widget))
compare_info.y = bounds.origin.y + bounds.size.height;
else
compare_info.y = bounds.size.height / 2.0f;
}
- if (!_gtk_widget_get_has_surface (widget))
+ if (!GTK_IS_NATIVE (widget))
compare_info.x = (direction == GTK_DIR_RIGHT) ? bounds.origin.x : bounds.origin.x + bounds.size.width;
else
compare_info.x = (direction == GTK_DIR_RIGHT) ? 0 : bounds.size.width;
}
else
{
- if (!_gtk_widget_get_has_surface (widget))
+ if (!GTK_IS_NATIVE (widget))
compare_info.x = bounds.origin.x + (bounds.size.width / 2.0f);
else
compare_info.x = bounds.size.width / 2.0f;
}
- if (!_gtk_widget_get_has_surface (widget))
+ if (!GTK_IS_NATIVE (widget))
compare_info.y = (direction == GTK_DIR_DOWN) ? bounds.origin.y : bounds.origin.y + bounds.size.height;
else
compare_info.y = (direction == GTK_DIR_DOWN) ? 0 : + bounds.size.height;
#endif
guint in_destruction : 1;
- guint no_surface : 1;
- guint no_surface_set : 1;
guint realized : 1;
guint mapped : 1;
guint visible : 1;
return widget->priv->visible && widget->priv->mapped;
}
-static inline gboolean
-_gtk_widget_get_has_surface (GtkWidget *widget)
-{
- return !widget->priv->no_surface;
-}
-
static inline gboolean
_gtk_widget_get_realized (GtkWidget *widget)
{
widget = GTK_WIDGET (window);
- gtk_widget_set_has_surface (widget, TRUE);
-
priv->title = NULL;
priv->geometry_info = NULL;
priv->type = GTK_WINDOW_TOPLEVEL;
static void
gtk_node_view_init (GtkNodeView *self)
{
- gtk_widget_set_has_surface (GTK_WIDGET (self), FALSE);
}
static void
static void
gtk_texture_view_init (GtkTextureView *self)
{
- gtk_widget_set_has_surface (GTK_WIDGET (self), FALSE);
}
static void
{
GtkEventController *controller;
- gtk_widget_set_has_surface (GTK_WIDGET (self), FALSE);
-
self->child1 = gtk_button_new_with_label ("1");
gtk_widget_set_parent (self->child1, GTK_WIDGET (self));
self->child2 = gtk_button_new_with_label ("2");
static void
gtk_matrix_chooser_init (GtkMatrixChooser *self)
{
- gtk_widget_set_has_surface (GTK_WIDGET (self), FALSE);
}
static void
static void
gtk_transform_tester_init (GtkTransformTester *self)
{
- gtk_widget_set_has_surface (GTK_WIDGET (self), FALSE);
-
self->pick_increase = 4;
}